Core Functional Modules
1. Gateway Management (mgmt Module)
This core module manages the complete lifecycle of edge gateways.
1.1 Gateway Lifecycle Management
- Gateway registration, activation, and authentication
- Gateway grouping and project binding
- Gateway details, including basic information, connection status, and runtime parameters
- Batch gateway operations through Excel import and export
1.2 Real-Time Data Monitoring
- Real-time WebSocket push based on MQTT over WebSocket
- Real-time monitoring of system points
- Historical data trend viewing using InfluxDB data
- Data-bucket management and data-expiration policy configuration
1.3 Device Connectivity and Management
- Device registration and grouping
- Data-point (
Tag) configuration and management - Data-point storage policy: users can select whether historical data is stored for each point. The limit is 100 points per operation, and the default storage period is one year.
- Data broadcasting: cross-gateway data routing
1.4 Remote Operations and Maintenance
- Remote configuration delivery through MQTT / Go-HTTP gateways
- Firmware OTA upgrades, including firmware package management and differential/full upgrade strategies
- Remote device restart
- Real-time log viewing through WebSocket streaming
- Remote login through a WebSocket remote shell
1.5 Cloud SCADA
- Visual SCADA editor
- Device data-point binding
- Real-time screen-data refresh through WebSocket
- License management: activation at the gateway level, with a 30-day trial or permanent license
- After license expiration: WebSocket data push stops, and InfluxDB storage stops
1.6 Alarm Events
- Device data-point threshold alarms
- Alarm rule configuration and triggering
- Alarm history and statistics
1.7 SN License Management
- Licensing by device serial number
- License generation based on the SN, secret key, timestamp, and MD5
- License validation and queries
2. Data Service (data Module)
This module aggregates, stores, and queries device data and serves as the platform's central data hub.
2.1 Data Ingestion
- Receives MQTT data reported by edge gateways
- Supports batch data reporting and single-point reporting
- Parses and standardizes data formats
2.2 Data Storage
- Writes time-series data to InfluxDB
- Configures storage policies by gateway, project, and data point
- Manages data-bucket expiration. New projects default to one year, and historical projects are upgraded automatically.
2.3 Data Queries
- Real-time data APIs for current values
- Historical data queries by time range with pagination
- Aggregated statistics, including average, sum, maximum, and minimum
2.4 Data Broadcasting
- Cross-gateway data routing and forwarding
- Rule-engine support for data filtering and transformation
3. Users and Permissions (user Module)
3.1 User Management
- User registration and login with JWT authentication
- Sub-account creation and deactivation
- Multi-role permission system
3.2 Roles and Permissions
- Role-based access control (RBAC)
- Fine-grained menu and API permissions
- Data-access isolation at the project and gateway levels
3.3 Project Management
- Project creation and configuration
- Gateway binding within projects
- Project data-bucket isolation
- Project-level data statistics and export
3.4 Resource Management
- Firmware repository management
- File-asset management
4. Application Service (app Module)
4.1 Mobile App
- Device-status viewing
- Real-time data dashboards
- Alarm push notifications
- Mobile access to device operating status at any time
5. Extension Hook (exhook Module)
- gRPC-based remote-hook extensions
- Third-party system integration
- Custom data-processing pipelines
6. API Gateway (gateway Module)
- Unified authentication: validates JWT tokens and blocks unauthorized requests
- Route distribution: precisely routes requests to the appropriate microservice
- Rate limiting and circuit breaking: applies request-frequency limits to prevent cascading failures
- Cross-origin configuration: centralized CORS configuration with multi-domain access
- Swagger routing: centralized access to Knife4j online documentation